// const multer = require("multer");
// const path = require("path")

// const storage = multer.diskStorage({
//     // 保存路径
//     destination: function (req, file, cb) {
//         cb(null, path.join(__dirname, '../upload'))
//         // cb(null, './upload')
//     },
//     // 保存的文件名
//     filename: function (req, file, cb) {
//         // 正则匹配后缀名
//         let type = file.originalname.replace(/.+\./, ".")
//         cb(null, file.fieldname + '-' + Date.now() + type)
//     }
// })

// const upload = multer({ storage: storage })

// module.exports = function (app) {
//     app.post('/profile', upload.single('file', function (req, res) {
//         // req.file是 'avatar' 文件的信息
//         // req.body是具有文本域数据，如果存在的话
//         console.log(req.files);

//         // res.send({
//         //     code: 200,
//         //     message: "上传成功"
//         // })
//         res.send('ok')
//     }))
// }

// 文件上传模块模块
const express = require('express')
const router = express.Router()
const path = require('path')
const multer = require('multer')
const fs = require('fs')

// 上传文件的处理
const upload = multer({
    dest: path.join(__dirname, '../upload/'),
    fileFilter(req, file, cb) {
        // 解决中文乱码问题
        file.originalname = Buffer.from(file.originalname, "latin1").toString("utf8");
        // 只允许上传png和jpg
        if (file.mimetype === 'image/jpeg' || file.mimetype === 'image/png') {
            cb(null, true)
        } else {
            cb(null, false)
        }
    }
})

// 上传图片                         字段名为file
router.post('/image', upload.single('file'), (req, res) => {
    if (req.file) {
        fs.readFile(req.file.path, (err, data) => {
            const img = req.file.originalname.split('.')
            const imgType = img[img.length - 1]
            fs.writeFile(path.join(__dirname, '../upload/', req.file.filename + `.${imgType}`), data, (err1) => {
                // 删除上传的二进制文件
                fs.unlink(req.file.path, (err2) => {
                    if (err2) console.log(err2);
                })
                console.log('上传成功');
                console.log(path.join(req.file.filename + `.${imgType}`));
                return res.send({
                    code: 200,
                    message: '上传成功',
                    imgurl: path.join(req.file.filename + `.${imgType}`)
                })
            })
        })
    }
})


module.exports = router